﻿
using System;
using System.Threading.Tasks;
using System.Linq.Expressions;


using Oliving.Edge.IRepository.Base;
using Oliving.Edge.Model;
using Oliving.Edge.Model.Dto.User;

using Oliving.Edge.Model.Models.User;
using System.Collections.Generic;

namespace Oliving.Edge.IRepository.User
{
    /// <summary>
    /// ISys_DeptRepository  , Sys_Dept , 
    /// </summary>	
    public interface ISys_DeptRepository : IBaseRepository<Sys_Dept>
    {
        Task<PageModel<Sys_DeptPageDto>> QueryPageList(Expression<Func<Sys_Dept, bool>> whereExpression, int intPageIndex = 1, int intPageSize = 20, string sortField = null, string sortOrder = null);



        Task<List<Sys_Dept_ComProPageDto>> GetList_ComPro(Expression<Func<Sys_Dept, bool>> whereExpression, string sortField = null, string sortOrder = null);



    }
}
